This invention relates to a method of mapping a calculation model in a parallel computer and, in particular, to a technique of efficiently carrying out a mapping operation in a parallel computer to achieve efficient communication.
With an increased demand for a computer system which is operable at a high speed and has a large capacity, a scattered processing technique is required to scatter processing to a plurality of processors.
To this end, there is provided a parallel computer which includes a plurality of processors for carrying out processing in a parallel fashion. In the parallel computer, the processors communicate with one another through communication means so that the processors are operable in a parallel fashion to perform particular integrated processing by a mass of the processors. Thus, the processing speed for one job can be increased.
In recent years, such a parallel computer has been rapidly developed. Environment for parallelization is gradually improved. Practical application becomes available.
However, it is impossible at present to automatically carry out various operations, such as a mapping operation, essential in the course of parallelization. In particular, a network architecture of the parallel computer must be taken into consideration in order to create an algorithm of data division or functional division upon the mapping operation (hereinafter referred to as a division algorithm).
Since a wide variety of network architectures are adopted in parallel computers, an ordinary user must fully consider the architecture of his machine in order to create an efficient program.
When the architecture of the parallel computer is improved, the parallel application program thus created must be modified in accordance with the improved architecture.
Accordingly, the parallel application program will not be able to follow the variation of the architecture of the parallel computer, in fact.
In this situation, accumulation of highly adaptable parallel application programs can not be expected.
Notwithstanding the circumstance of the present status described above, some progressive users fully consider the architecture to produce high speed application programs.
On the other hand, in order to bring parallel computers into wide use, it is necessary to establish such an environment that enables an ordinary user to create a parallel application program without concern for the division algorithm. To this end, taking the convenience of use alone into consideration, it is desired that the parallel application program can be created in accordance with a user's image of a N-dimensional calculation model. On the other hand, in view of an increase in speed of the application program, it is necessary to carry out a mapping operation corresponding to the calculation model of the progressive users.
Accordingly, an interface easily used by the user and operable at a high speed is required with respect to the data reference patterns often appearing In the application program.
In view of such a demand, it is an object of this invention to enable a user of a parallel computer to create or run an application program without concern for an architecture of the parallel computer.